package com.jf.cloud.service.sysmanager.dao;

import com.jf.cloud.service.sysmanager.common.base.IBaseService;
import com.jf.cloud.service.sysmanager.entity.PubgClub;
import com.jf.cloud.service.sysmanager.entity.PubgMatch;
import com.jf.cloud.service.sysmanager.entity.PubgTeam;
import com.jf.cloud.service.sysmanager.entity.PubgUser;


/**
 * 员工服务接口
 * 
 * @author 代码机1.0 创建时间：2018-03-31
 */
public interface IPubgClubService extends IBaseService<PubgClub, Long> {

	/**
	 * 新增/修改员工
	 * 
	 * @author 代码机1.0 创建时间：2018-03-31
	 */
	public PubgClub saveOrUpdatePubgClub(PubgClub pubgClub) throws Exception;

	/**
	 * 更新俱乐部信息
	 *
	 * @author 高冬冬
	 */
	public void updatePubgClub(PubgClub pubgClub) throws Exception;

    /**
     * 更新战队余额 并插入流水
     * 
     * @author 朱建文 创建时间：2018年4月4日 下午3:51:58
     */
    public void updateTeamBalance(PubgClub pubgClub, PubgTeam pubgTeam, Integer optType, Double optMoney) throws Exception;

    /**
     * 更新赛事状态（不包含 已结束）“已结束”需要独立处理
     * 
     * @author 朱建文 创建时间：2018年4月8日 下午4:29:40
     */
    public void updateMatchState(PubgMatch pubgMatch, String matchState, PubgUser pubgUser) throws Exception;

    /**
     * 计算队员、战队、俱乐部所得金额
     * 
     * @author 朱建文 创建时间：2018年4月8日 下午7:54:06
     */
    public void computeMatchBonus(PubgMatch pubgMatch) throws Exception;
    
    /**
     * 确认比赛结果
     * 
     * @author 朱建文 创建时间：2018年4月8日 下午7:54:06
     */
    public void confirmMatchResult(PubgMatch pubgMatch, PubgClub pubgClub, PubgUser pubgUser) throws Exception;
    
    /**
     * 查询俱乐部靓号是否存在
     * 
     * @author 朱建文 创建时间：2018年5月8日 下午4:37:38
     */
    public boolean checkClubNoIsExist(Long rowId, String clubNo);
    
}
